package cn.xjt.Unsafe;

import java.util.ArrayList;
import java.util.List;

/**
 * 案例，synchronized的作用
 * @author xujiangtao
 * @create 2020-08-01-14:06
 */
public class UnsafeList {
    public static void main(String[] args) throws InterruptedException {
        List<String> l =new ArrayList<>();
        for (int i = 0; i < 1000; i++) {
            new Thread(()->{
                synchronized (l)        //synchronized锁住对象，当有线程访问这个对象的时候，其他前程排队
                {
                    l.add(Thread.currentThread().getName());
                }
            }).start();
        }
        Thread.sleep(3000);
        System.out.println(l.size());
    }
}
